robowarfandomcom-20200214-history
RoboWar 5
RoboWar 5 is a Windows port of RoboWar 4.5.2 for Mac OS 7 to 9 (RoboWar 4.5.2 doesn't run natively in MacOS 10). The game runs on all Windows versions (Windows 95, 98, Me, XP and Vista). It is now possible to even run it on Linux and MacOS X. See running RoboWar 5 under MacOS X and Linux at http://robowar.sourceforge.net/RoboWar5/MacOrLinux.htm for more information. RoboWar 5 for Windows can be downloaded here http://kevinhertzberg7777777.googlepages.com/RoboWar5.exe for free. {C History and game design RoboWar 5 is not written in C as it predecessor was, instead Kevin Hertzberg used Visual Basic 6.0 to write it. No code whatsoever was ported from the C source code (except the range, radar and doppler calculation routines and the code that normalizes group score in tournaments). Instead, Kevin Hertzberg rewrote the entire game in basic and used the Mac emulator Basilisk II to check that each and every single instruction in RoboWar 5 produced the exact same result as it did in Mac RoboWar 4.5.2. Since there are a limited number of instructions in RoboWar, they each could be synched up individually. Much information and bug hunting was performed by letting a robot start at one specific position (predetermed by the robots own code) and debugging it while fighting another robot. By doing this in both the Windows and the Mac version simultaneously, it was possible to see exactly which instruction (if any) that was incorrectly implemented in the upcoming Windows version. Debugging a robot from start was just one of the ways the game was built and synchronized with the Mac version. Rerunning tournaments and, later in the development, simply look at the Mac 4.5.2 source code was also used by Kevin. A considerable breakthrough in RoboWar 5:s history was when Kevins friend Sam Rushing wrote a converter application that was able to convert the classic Mac resource fork based RoboWar file format to .xml files. Since the .rwxml file format the converter changed the robots to could easily be interpreted and used by Kevin's game (while Windows XP wasn't even able to handle files featuring a resource fork at all), that meant that all robots from previous official tournaments could be ran and tested at the new upcoming Windows version. (Before that Kevin converted the robots manually by copying and pasting from Basilisk II.) RoboWar 5 was rather crude at first, but new versions were continuously released during 2004 and 2005, so the game was constantly improving. Right now RoboWar 5 is considered the only acceptable successor to RoboWar 4.5.2, and nearly all features that RoboWar 4.5.2 has are featured in RoboWar 5. {C Compatibility with the former Mac version Compatibility with RoboWar 4.5.2 is very high in RoboWar 5. In case two robots starts in the same position, battles play out identical in RoboWar 5 and in RoboWar 4.5.2. This does apply to all robots, it has even been tested and proved with complex bots such as Half-CensoredUpgrageBot, Norobot, QDCH 6, CHANGER 2, Mortality II, Jade, Arachnée and Delsevart. The compatibility has also been proven by that top rank robots coded in Mac RoboWar (totally without any modification) has been able to conquer prizes in official tournaments, even when competition has been very fierce. {C RoboWar 5 in Official Tournaments Many former Mac RoboWar users had switched to Windows during the crisis that struck the company Apple, the manufacturer of Macintosh computers. Since Microsoft suddenly owned 90% of the market, a lot of former Mac users changed their platform and computer architecture of choice to Windows and X86 (Kevin Hertzberg and apparently RoboWar gigant Eric Foley did that as well). After the release of RoboWar 5, the popularity of RoboWar raised to levels it had only reached in it's Mac heydays years earlier. To celebrate that the long awaited Windows version finally was out, it was decided that an official tournament should be held again. Eric Foley was asked by Kevin Hertzberg to do a comeback as tournament operator, and he accepted this suggestion by Kevin. Eric did no longer own a Mac however, and hence RoboWar 5 was used for Tournament 24, which was the first tournament to be run on an Intel based machine rather than a Mac. Tournament 24 Around half of the robots that entered tournament 24 were coded using RoboWar 4.5.2 (although many of them were re-entries). Lechat v14.1 by Randy Munroe was the only bot completely coded in Macintosh RoboWar, that managed to claim a prize in the tournament (Mar by Eric Foley was modified). The tournament was run using RoboWar 5.1.4, which still utilized a lot of the inorthodox constructions Kevin used in his early version of RoboWar 5. Kevin was not an elegant programmer, he just wanted a Windows version that worked, and therefore he did choose rather simple and but fast and actually quite often working solutions rather than the more elegant, complex and modern-in-computer-science solutions professional programmers in the RoboWar community preferred. Most noticeable was that each robot consisted of several files rather than just one single file. Also, the compiled code of the robots still consisted of an array of strings, rather than integers. This made the compiled code very easy to read for the human eye (this benefited Kevin in the early stages of development) but caused a considerable slowdown. The tournament was widely considered successful, interesting, fun and was a most welcome in the community of RoboWar. Tournament 25 When tournament 25 was run RoboWar 5 was generally established as successor of RoboWar 4.5.2. The game was as professional as RoboWar 4.5.2, and Kevin had done efforts to marketing the game on major download sites. This effort actually showed to work (to Kevins surprise). Entries for the tournament featured names never seen before in the RoboWar community, including the winner of the first prize BlueOwl. The Titan round was not at all as successful as the mortal rounds, when Peter Ström conquered over Foley by using dubious tactics rather than any real skill and benefited from the low number of entries. Foley was not too happy with this outcome, but approved it, considering that Ström had followed the rules for the tournament even though there was a chance that Foley's machine would have won in case Ström would agreed to send Dark Knight 4. Eric Foley had requested Peter Ström to enter Dark Knight 4 from the previous tournament when it stood clear that the titan round was short of entries. (At least 6 entries is required by RoboWar 5 to run a tournament. This is partly due that Kevin, using his "I just want a working Windows version"-attitude, managed to hardcode the tournament engine to coldly rely on at least 6 robots. Partly this is also that Kevin did never took any priority to fix this, since tournaments with less than 6 robots would be "rather pointless".) A lot more Robots were coded at Windows environment this time (only 3 entries were built using Macintosh RoboWar 4.5.2). This tournament was also widely considered successful, interesting and most welcome in the community of RoboWar. {C Present and future Kevin Hertzberg stopped developing RoboWar 5 actively in the end of 2005/beginning of 2006. This was mainly due personal reasons. However, new versions have been done by him infrequently after that date (most considerably a redesign of the user interface by icon champion David Forslund, also a personal friend of Kevin Hertzberg). Kevin has stated that he's regrettably not planning to return to his former very active position in the RoboWar world (at writing moment), but, as many others, has absolutely nothing against and sees enjoyment in that the game lives on.